Agora2.Ext is the second in the new numbered series of misc productivity externals. They are also the 4th in a series of shareware externals. This series contains 6 externals. They are
% Delay
Delay will issue a delay that is the number of ticks specified. Ticks are equal to 1/60 second
Longint - Number of Ticks to Wait
% FormatPhone
FormatPhone will take a raw string and convert it into a string formatted in the form
(###) ###-#### if there are 10 characters in the string
###-#### if there are seven characters in the string
and the same way as entered if it has an odd number of characters.
String1 - the String to be formatted
String2 - default area code, used only if it isn't blank
%MoveWindow
MoveWindow will move the topleft corner of the frontmost window to the coordinates specified by the two integers.
Integer1 - Horizontal coordinate
Integer2 - Vertical Coordinate
%ResizeWindow
ResizeWindow will take the frontmost window and make it as high and wide as specified by the two paramaters.
Integer1 - Horizontal Coordinate
Integer2 - Vertical Corrdinate
%Redraw
Redraw will force a redraw of the screen of the Macintosh, for you hackers or would be external writers the Source code consists just of a
GetPort(APort);
InvalRect(APort^.PortRect);
%Num2SN
Num2SN Will take a Real Number and Integer as Arguments, and return a String which contains the Real number represented with Integer Number of Significant Digits.
#### BINHEX alert-10-ext.hqx ****
From macmod@SUMEX-AIM.Stanford.EDU Fri Aug 13 22:25:02 1993
From: "Rene G.A. Ros" <rgaros@bio.vu.nl>
Subject: alert-10-ext.hqx
Date: Fri, 13 Aug 93 12:28:46 MET DST
4D Alert 1.0.ext
Freeware.
Uses ALRT and DITL resources to display alert windows.
(C) 1992-1993, Rene G.A. Ros Amsterdam, The Netherlands
rgaros@bio.vu.nl
See documentation included with some externals for
AutoChoose will replace many of the features of Apple's Chooser within your 4th Dimension program.
For example You have a Laserwriter and a local Imagewriter. You want your reports to be printed on the Imagewriter and the other information to be printed on the Laserwriter, you would have to go to Chooser each time you change. AutoChoose allows you
Backup. v1.1 is an update to the copy uploaded to CompuServe in November, 1990. The external provides 4th D users with database backup utilities (for backing up the currently active database from within a 4th D program). It is uploaded without guarant
GetFile displays a modified SFGetFile dialog for opening a file, centered around the coordinates centerV and centerH. You may specify an optional type and/or creator for limiting the list of files to that type and/or creator. If the type or creator is
PutFile displays a modified SFPutFile dialog for saving or creating a file, centered around the coordinates centerV and centerH.
SetFInfo(theFile; fType; fCreator) err
SetFInfo is a function which sets the file signature of theFile to the type and creator specified. This is primarily useful if you want to change the creator of a file, since the 4D Create document command will set the type. Any errors are returned in
ModSTR is a function which reads or modifies a STR or STR# resource. Specify the type of the resource to read in resType. If resType is not "STR " (you must include the space at the end) or "STR#", ModSTR does nothing and returns an error code of 1 (ba
#### BINHEX blob-mgr-10-ext.hqx ****
From chrispis@eng.auth.gr Sat Aug 14 13:02:31 1993
Date: Sat, 14 Aug 93 20:59:33 +0300
From: chrispis@eng.auth.gr (Christos Pistofidis)
Subject: BLOBMgr v.1.0
Liam,
This is version 1.0 of BLOBMgr. It should go to the 4d archive.
ClockArea is an external that will display a textual clock in the font specified by the name of the variable in the external area. This external will only work in version 2.x of 4th DIMENSION.
This external procedure can be used to capitalize the first letter of each word in a sentence. It uses a special algorithm which permits the user to provide a table of characters to capitalize after.
These externals were written because 4D has a tendancy to come up with ROut of MemoryS errors at various times. The PurgeMemory and FreeMemory externals provide a way to see the amount of available RAM in the current Application Heap as well as provid
The FreeMemory external returns the amount of non-contigious RAM available in the current Application Heap on completion of the call. The PurgeMemory external will purge all purgable blocks and compact the current Application Heap.
GetDBPath will return in string the pathname of the current directory and the directorys ID in Longint. Use this ID with SetDBPath to set the directory back to where it should be.
The external provides 4th D users with a method of determing the actual number of users of 4th D on a network, along with their AppleTalk names, from inside the 4thJD environment. By obtaining this data one can much more reliably know the network comp
This external adds a hierarchical menu onto a menu item in a normal 4D menu.
Int1 is the "Parent" menu ID.
Int2 is the "Parent" item ID.
Str3 is the title for the submenu (this is unused now, pass anything.)
Str4 is the Item list for the submenu (items in a string separated by semicolons, metacharacters can be used.)
Int5 is the ID to give the new submenu - must be between 3 and 1023 - be careful to avoid conflicts with existing menus!!
Use this external ONLY with menus that will be trapped for using the Menu Selected command (i.e. menus you would use while in a layout procedure.) The submenu items cannot call 4D globals!
eg.
AddHMenu(2;3;"title";
"One;Two;Three";5)
will add a submenu to item 3 of menu 2 (the one immediately after the "Edit" menu). The submenu will contain three items, labeled "One", "Two", and "Three". Any menu selection in the submenu will return a menu ID of 5.
This external returns information about 4D which can be used to determine compatibility and correct configuration.
Var1 returns the version number of 4D being run.
Var2 returns what environment the product is in. One (1) means the product is in User environment. Zero (0) means the product is in Custom environment.
Var3 returns what mode the product is in. Zero (0) means the product is in Single User mode. One (1) means the product is in Multi-User mode.
Var4 returns information regarding the type of network being used. Zero (0) means SymbTalk*, One (1) means Omninet*, Five (5) means AFP* ( Apple Filling Protocol )
Var5 returns information regarding the type of server being used. Zero (0) means block server. One (1) means file server.
This external pulls an item (a string) from a list of items (a string). Var1 is the list, Var2 is the item # desired, Var3 is the item delimeter (a string), and Var4 returns the item text.
#### BINHEX mikes-arrays-15-ext.hqx ****
From: shawn@cars.com (Shawn Connelly)
Subject: FILE: MP Arrays.sit.hqx
Date: Wed, 14 Jul 93 09:40:19 EST
Organization: Connelly Automation Research and Services
MP Arrays.sit
Version 1.5 of MikePack's array manipulation externals for 4th Dimension.
Package includes 10 routines for working with arrays and text files.
Shareware fee provides free upgrades and removal of shareware message windows!
$10 Shareware
For more information, please contact Mike Jimenez <mjimenez@prubank.com>.
-- (Cut Here) --
#### BINHEX mikes-dragging-15-ext.hqx ****
From: shawn@cars.com (Shawn Connelly)
Subject: FILE: MP Dragging.sit.hqx
Date: Wed, 14 Jul 93 09:41:14 EST
Organization: Connelly Automation Research and Services
MP Dragging.sit
Version 1.5 of MikePack's drag & drop routines.
Package includes 4 routines for dragging and dropping items on a 4D
layout. Support for dragging gray rectangle around, or text.
Highlights "drop off" locations as you drag item around. Supports
multiple windows in v3.x of 4D.
Shareware fee provides free upgrades and removal of shareware message windows!
$10 Shareware
For more information, please contact Mike Jimenez <mjimenez@prubank.com>.
-- (Cut Here) --
#### BINHEX mikes-misc-15-ext.hqx ****
From: shawn@cars.com (Shawn Connelly)
Subject: FILE: MP Popups/Misc.sit.hqx
Date: Wed, 14 Jul 93 09:42:06 EST
Organization: Connelly Automation Research and Services
MP Popups/Misc.sit
Version 1.5 of MikePack's popup menus, clipboard, gestalt, and misc.
externals for 4th Dimension. Package includes 64 routines for working
with hierarchical popup menus, ALL of the Gestalt constants, sending
text and pict data to the clipboard, and more!
Shareware fee provides free upgrades and removal of shareware message windows!
$10 Shareware
For more information, please contact Mike Jimenez <mjimenez@prubank.com>.
-- (Cut Here) --
#### BINHEX mikes-pack-15-ext.hqx ****
From: shawn@cars.com (Shawn Connelly)
Subject: FILE: MikePack.sit.hqx
Date: Wed, 14 Jul 93 09:39:10 EST
Organization: Connelly Automation Research and Services
MikePack.sit
Version 1.5 of MikePack externals package for 4th Dimension.
This is a small little external that I wrote that allows you call several different Macintosh toolbox routines. Most of them are rather simple but some offer the developer some powerful control over the Macintosh. I have used these in my applications
NI_Delay pauses for numTicks ticks (60ths of a second).
% NI_GetMods(Command; Option; Shift; Control)
NI_GetMods returns the state of the four keyboard modifiers in the four variables passed to it. If a modifier is being pressed, 1 is returned in the corresponding parameter, else zero is returned in the corresponding parameter.
Passed a 4D picture field or variable in pic4D, NI_PicInfo returns the following information about the picture
picWidth, picHeight the width and height of the picture frame in pixels
picOrgV, picOrgH for pictures that are on background, returns the vertical and horizontal coordinates of the picture offset
picSize the size of the picture in bytes
% NI_RmvList(listName; err)
Passed a 4D list name in listName, NI_RmvList removes the list, updates the structure file, and disposes it from the heap. If NI_RmvList is called in multi-user mode, it does nothing and returns -1 in err. If listName is not a valid list name, NI_RmvLi
NiceChoice provides an alternate method for you to present your user with a list of items for selection. The NiceChoice.ext offers a combination of some of the features of the Standard Choices and some
of the features of a Scrollable area. It has advantages over both.
NoWhiteSpace processes a string (TheString) and returns it with all "whitespace" characters removed. You pass a list of valid (non- whitespace) characters in the ValidChars string.
Pass 1 in UpShift to automatically Uppercase the returned string. Passing 0 in UpShift means that the external will differentiate between upper and lowercase letters and thus both sets should be passed in ValidChars.
TheString & ValidChars have a maximum length of 255 characters.
Num2SN Will take a Real Number and Integer as Arguments, and return a String which contains the Real number represented with Integer Number of Significant Digits.
NUM2SN(.0000654;3;theString) will Return theString = 6.54e-5
This external checks the validity of a numerical entry. It is primarily useful for enterable variables in a dialog box that must accept more than one data type.
#### BINHEX pict-bundle-111-ext.hqx ****
From 73507.3041@CompuServe.COM Wed Sep 15 01:10:02 1993
Date: 14 Sep 93 23:25:30 EDT
From: Scott Ribe <73507.3041@CompuServe.COM>
Subject: PictBundle 1.1.1
Dang,I just don't seem to be able to get this quite right. Last week I sent
version 1.1.1 with a bug fix.
Here's yet another upload.
THIS UPLOAD CONTAINS NO BUG FIXES OR NEW FEATURES OR ANY CODE CHANGES AT ALL.
But it does have the *!@# Finder comment and External Mover comment edited so
they say 1.1.1 instead of 1.1
Argh.
I decided to correct this oversight and send it to avoid confusion in the
future. You might wish to post a notice explaining to those who downloaded a
file that was described as being 1.1.1 in the library, that they do not need to
download this latest upload. They probably should do a Get Info on the external
file and edit the Finder comment to avoid future confusion.
Quit allows you to automatically quit a 4D database by formula. The Expr is used to specify what you want to do
If your database is running under multi-user mode 2 and 12 are not supported. 1 and 11 work respectively like 3 and 13. Quit4D works correctly under multi-user mode only if the database has been opened with a password with an associated startup proce
I wanted an easy way of making a selection from a list of things. I had been using a layout and the TextParse external but then I ran into the inevitable problem of having one window open and needing the select. So I wrote this.
This external breaks a string at the last space before the passed length. A string without spaces will be broken at the length point. A string shorter than the length will be returned complete.
This routine will take a long string and break it into lines of length vlen each separated by a CRLF. This is useful for serial printing when you want to break a page of text into lines of a specified length. Be sure to initialize all variables befor
#### BINHEX speech-pack-20-ext.hqx ****
From "Rene G.A. Ros <rgaros@bio.vu.nl>" Wed Sep 8 03:08:46 1993
Date: Wed, 8 Sep 93 08:41:31 +0200
From: "Rene G.A. Ros" <rgaros@bio.vu.nl>
Subject: speech-pack-20.sea.hqx
4D SpeechPack 2.0.ext MAJOR UPGRADE!!!
Postcardware.
Major upgrade of the previous 1.0b2 version. Allows
asynchronous speech. Needs the Speech Manager from Apple.
This procedure manages an external area in an 4D layout and simulates an invisible button which is highlighted by an invert. You can get the value of the button by calling ReadButton (another external routine). The button is 1 if it has been clicked, 0
WindowPack lets you directly manipulate windows from 4th dimension procedures. Warning You can manipulate windows which belong to applications other than 4th dimension if you are not careful. Follow the examples and instructions to make sure you get
YesNo displays a dialog with the message specified by Expr. There are 3 buttons in the dialog Yes, No and Cancel. If the user clicks in Yes, Var is equal to 1, if the user clicks in No, it is equal to 2, if the user clicks in Cancel it is equal to 3.